package com.zbkj.crmeb.front.response;

import com.zbkj.crmeb.chant.model.ChannelMemberLevel;
import com.zbkj.crmeb.front.vo.VipDiscountVo;
import com.zbkj.crmeb.marketing.response.StoreCouponUserResponse;
import com.zbkj.crmeb.store.response.StoreCartResponse;
import com.zbkj.crmeb.user.model.User;
import com.zbkj.crmeb.user.model.UserAddress;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 订单确认apiResponse
 */
@Data
public class ConfirmOrderResponse {
    // 收否扣减
    private Boolean deduction;
    // 可用优惠券
    private StoreCouponUserResponse usableCoupon;

    // 购物车信息
    @ApiModelProperty(value = "优惠券商品id集合",hidden = true)
    private List<Integer> productIdList;
    // 用户地址
    private UserAddress addressInfo;
    // 购物车信息
    private List<StoreCartResponse> cartInfo;
    // 价格集合
//    private HashMap<String, Object> priceGroup;
    private PriceGroupResponse priceGroup;

    private HashMap<String, Object> other;


    private String orderKey;

    private String offlinePostage;

    private User userInfo;

    private String integralRatio;
    private String offlinePayStatus;

    // 余额支付 1 开启 2 关闭
    private String yuePayStatus;

    // 门店自提是否开启
    private String storeSelfMention;

    // 门店信息
    private String systemStore;

    // 微信支付 1 开启 0 关闭
    private String payWeixinOpen;

    // 库存是否足够 true 够 false 不够
    private Boolean isStock;

    @ApiModelProperty(value = "是否使用积分",hidden = true)
    private Boolean useIntegral;

    @ApiModelProperty(value = "快递类型 1快递  2自提",hidden = true)
    private Integer shippingType;

    @ApiModelProperty(value = "会员商品id集合",hidden = true)
    private List<Integer> vipProductIdList;

    @ApiModelProperty(value = "积分商品id集合",hidden = true)
    private List<Integer> integralProductIdList;

    @ApiModelProperty(value = "商品会员优惠信息",hidden = true)
    private List<VipDiscountVo> vipDiscountList;

    @ApiModelProperty(value = "等级会员信息")
    private ChannelMemberLevel memberLevel;

    @ApiModelProperty(value = "满减送信息")
    private Map<String, Object> discountInfo;

    @ApiModelProperty(value = "优惠套餐id")
    private Integer discountPackageId;

    /** 是否是指定渠道商的自建商品及大陆现货或者指定团长的推广商品 */
    private Integer isAllowSelfPickUp;

}
